package com.pethome.common.core.domain.entity;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.pethome.common.annotation.Excel;
import com.pethome.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 客户信息对象 t_customer
 * 
 * @author hjc
 * @date 2024-08-25
 */
@TableName("t_customer")
public class Customer extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    @Excel(name = "id")
    @TableId("customer_id")
    private Long customerId;

    /** 邮箱 */
    @Excel(name = "邮箱")
    private String customerEmail;

    /** 电话 */
    @Excel(name = "电话")
    private String customerPhone;

    /** 密码 */
    private String customerPwd;

    /** 昵称 */
    @Excel(name = "昵称")
    private String customerName;

    /** 头像 */
    @Excel(name = "头像")
    private String customerAvatar;

    /** 年龄 */
    @Excel(name = "年龄")
    private Long customerAge;

    /** 性别 */
    @Excel(name = "性别")
    private Long customerSex;

    /** 职业 */
    @Excel(name = "职业")
    private String customerProfession;

    /** 家庭住址 */
    @Excel(name = "家庭住址")
    private String customerAddr;

    /** 状态 */

    @Excel(name = "状态")
    private Long customerStatus;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date customerCreateAt;

    /** 修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date customerUpdateAt;

    public void setCustomerId(Long customerId) 
    {
        this.customerId = customerId;
    }

    public Long getCustomerId() 
    {
        return customerId;
    }
    public void setCustomerEmail(String customerEmail) 
    {
        this.customerEmail = customerEmail;
    }

    public String getCustomerEmail() 
    {
        return customerEmail;
    }
    public void setCustomerPhone(String customerPhone) 
    {
        this.customerPhone = customerPhone;
    }

    public String getCustomerPhone() 
    {
        return customerPhone;
    }
    public void setCustomerPwd(String customerPwd) 
    {
        this.customerPwd = customerPwd;
    }

    public String getCustomerPwd() 
    {
        return customerPwd;
    }
    public void setCustomerName(String customerName) 
    {
        this.customerName = customerName;
    }

    public String getCustomerName() 
    {
        return customerName;
    }
    public void setCustomerAvatar(String customerAvatar) 
    {
        this.customerAvatar = customerAvatar;
    }

    public String getCustomerAvatar() 
    {
        return customerAvatar;
    }
    public void setCustomerAge(Long customerAge) 
    {
        this.customerAge = customerAge;
    }

    public Long getCustomerAge() 
    {
        return customerAge;
    }
    public void setCustomerSex(Long customerSex) 
    {
        this.customerSex = customerSex;
    }

    public Long getCustomerSex() 
    {
        return customerSex;
    }
    public void setCustomerProfession(String customerProfession) 
    {
        this.customerProfession = customerProfession;
    }

    public String getCustomerProfession() 
    {
        return customerProfession;
    }
    public void setCustomerAddr(String customerAddr) 
    {
        this.customerAddr = customerAddr;
    }

    public String getCustomerAddr() 
    {
        return customerAddr;
    }
    public void setCustomerStatus(Long customerStatus) 
    {
        this.customerStatus = customerStatus;
    }

    public Long getCustomerStatus() 
    {
        return customerStatus;
    }
    public void setCustomerCreateAt(Date customerCreateAt) 
    {
        this.customerCreateAt = customerCreateAt;
    }

    public Date getCustomerCreateAt() 
    {
        return customerCreateAt;
    }
    public void setCustomerUpdateAt(Date customerUpdateAt) 
    {
        this.customerUpdateAt = customerUpdateAt;
    }

    public Date getCustomerUpdateAt() 
    {
        return customerUpdateAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("customerId", getCustomerId())
            .append("customerEmail", getCustomerEmail())
            .append("customerPhone", getCustomerPhone())
            .append("customerPwd", getCustomerPwd())
            .append("customerName", getCustomerName())
            .append("customerAvatar", getCustomerAvatar())
            .append("customerAge", getCustomerAge())
            .append("customerSex", getCustomerSex())
            .append("customerProfession", getCustomerProfession())
            .append("customerAddr", getCustomerAddr())
            .append("customerStatus", getCustomerStatus())
            .append("customerCreateAt", getCustomerCreateAt())
            .append("customerUpdateAt", getCustomerUpdateAt())
            .toString();
    }
}
